package cn.com.nes.site.service.crm.customer.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

@ApiModel(value = "查询客户房屋出参模型")
@Data
public class CustomerHouseDTO {

    @ApiModelProperty(value = "主键ID 房屋ID")
    private Long id;

    @ApiModelProperty(value = "公司ID")
    private String companyId;

    @ApiModelProperty(value = "客户ID")
    private String customerId;

    @ApiModelProperty(value = "行政区划代码")
    private String areaCode;

    @ApiModelProperty(value = "经度")
    private BigDecimal longitude;

    @ApiModelProperty(value = "纬度")
    private BigDecimal latitude;

    @ApiModelProperty(value = "是否农村")
    private Boolean isVillage;

    @ApiModelProperty(value = "采暖面积")
    private BigDecimal heatingArea;

    @ApiModelProperty(value = "建筑面积")
    private BigDecimal floorSpace;

    @ApiModelProperty(value = "常用采暖面积")
    private BigDecimal commonHeatingArea;

    @ApiModelProperty(value = "建筑结构")
    private String buildingStructure;

    @ApiModelProperty(value = "建筑层高")
    private BigDecimal buildingHeight;

    @ApiModelProperty(value = "外墙厚度编码")
    private String outerWallThickness;

    @ApiModelProperty(value = "外墙保温")
    private Boolean outerWallKeepWarm;

    @ApiModelProperty(value = "供暖方式")
    private String heatingMode;

    @ApiModelProperty(value = "安装位置编码")
    private String installPosition;

    @ApiModelProperty(value = "房屋用途")
    private String housePerpose;

    @ApiModelProperty(value = "房屋间数")
    private BigDecimal roomCount;

    @ApiModelProperty(value = "设计单位")
    private String designUnit;

    @ApiModelProperty(value = "图纸编号")
    private String drawingNo;

    @ApiModelProperty(value = "窗户类型")
    private String windowType;

    @ApiModelProperty(value = "设计热负荷")
    private BigDecimal designHeatingLoad;

    @ApiModelProperty(value = "房屋朝向")
    private String houseDirection;

    @ApiModelProperty(value = "末端状态")
    private String endState;

    @ApiModelProperty(value = "采暖末端")
    private String heatingEnd;

    @ApiModelProperty(value = "删除标识：0-正常，1-删除")
    private Integer deleted;

    @ApiModelProperty(value = "创建人ID")
    private Long gmtCreateId;

    @ApiModelProperty(value = "创建时间")
    private Date gmtCreate;

    @ApiModelProperty(value = "修改人")
    private Long gmtModifiedId;

    @ApiModelProperty(value = "修改时间")
    private Date gmtModified;

    @ApiModelProperty(value = "房屋地址")
    private String address;

    @ApiModelProperty(value = "门牌号")
    private String houseNumber;

    @ApiModelProperty(value = "电表号")
    private String electricityMeterNumbers;

    @ApiModelProperty(value = "燃气表号")
    private String gasMeterNumbers;

    @ApiModelProperty(value = "房屋类型")
    private String houseType;

    @ApiModelProperty(value = "能源类型")
    private String energyType;

    @ApiModelProperty(value = "房屋业务id，与is_install_info关联")
    private String houseUuid;

    @ApiModelProperty(value = "电表地址")
    private String electricityMeterAddress;

    @ApiModelProperty(value = "常住人数")
    private Integer residentCount;

    // 扩展参数
    @ApiModelProperty(value = "建筑结构名称")
    private String buildingStructureName;
    @ApiModelProperty(value = "供暖方式名称")
    private String heatingModeName;
    @ApiModelProperty(value = "房屋用途名称")
    private String housePerposeName;
    @ApiModelProperty(value = "窗户类型名称")
    private String windowTypeName;
    @ApiModelProperty(value = "房屋朝向名称")
    private String houseDirectionName;
    @ApiModelProperty(value = "末端改造状态名称")
    private String endStateName;
    @ApiModelProperty(value = "采暖末端名称")
    private String heatingEndName;
    @ApiModelProperty(value = "外墙厚度编码名称")
    private String outerWallThicknessName;
    @ApiModelProperty(value = "机组安装位置名称")
    private String installPositionName;
    @ApiModelProperty(value = "房屋类型名称")
    private String houseTypeName;
    @ApiModelProperty(value = "能源类型名称")
    private String energyTypeName;
}

